package com.ym.soso.service;

import com.ym.core.utils.tkmybatis.IBaseSV;
import com.ym.soso.domain.entity.ChinaMedicineEntity;
import com.ym.soso.domain.param.ChinaMedicineMobileQueryParam;
import com.ym.soso.domain.param.ChinaMedicineQueryParam;
import com.ym.soso.domain.param.ChinaMedicineUpdateParam;
import com.ym.soso.domain.vo.ChinaMedicineListPcVO;
import com.ym.soso.domain.vo.ChinaMedicineVO;
import com.ym.soso.domain.param.PublishParam;

import java.util.List;

/**
 * 中医堂信息Service接口
 *
 * @author ym
 * @date 2020-09-01
 */
public interface IChinaMedicineSV extends IBaseSV<ChinaMedicineEntity> {

	/**
	 * 查询中医堂信息列表
	 *
	 * @param queryParam 中医堂信息 查询对象
	 * @return 中医堂信息集合
	 */
	List<ChinaMedicineListPcVO> selectListPC(ChinaMedicineQueryParam queryParam);


	/**
	 * 新增中医堂信息
	 *
	 * @param updateParam 中医堂信息 新增对象
	 * @return 结果
	 */
	Long insertPC(ChinaMedicineUpdateParam updateParam);

	/**
	 * 修改中医堂信息
	 *
	 * @param updateParam 中医堂信息 修改参数
	 * @return 结果
	 */
	int updateByIdPC(ChinaMedicineUpdateParam updateParam);

	/**
	 * 新增修改
	 * @param updateParam
	 */
	void update(ChinaMedicineUpdateParam updateParam);

	/**
	 * APP列表查询
	 * @param queryParam
	 * @return
	 */
	List<ChinaMedicineVO> selectCustomerByModel(ChinaMedicineMobileQueryParam queryParam);

	/**
	 * 详情 PC
	 * @param id
	 * @return
	 */
    ChinaMedicineVO infoPc(Long id);

	/**
	 * 删除中医堂信息
	 * @param ids
	 * @return
	 */
	int delete(Long[] ids);

	/**
	 * 发布
	 * @param params
	 * @return
	 */
	int publish(PublishParam params);
}
